<!--$Id: rep_start.so,v 1.17 2006/03/15 19:39:22 bostic Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB: DB_ENV-&gt;rep_start</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<table width="100%"><tr valign=top>
<td>
<b>DB_ENV-&gt;rep_start</b>
</td>
<td align=right>
<a href="../api_c/api_core.html"><img src="../images/api.gif" alt="API"></a>
<a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a></td>
</tr></table>
<hr size=1 noshade>
<tt>
<b><pre>
#include &lt;db.h&gt;
<p>
int
DB_ENV-&gt;rep_start(DB_ENV *env, DBT *cdata, u_int32_t flags);
</pre></b>
<hr size=1 noshade>
<b>Description: DB_ENV-&gt;rep_start</b>
<p>The DB_ENV-&gt;rep_start method configures the database environment as a client
or master in a group of replicated database environments.</p>
<p>The DB_ENV-&gt;rep_start method is not called by most replication
applications.  It should only be called by applications implementing
their own network transport layer, explicitly holding replication group
elections and handling replication messages outside of the replication
manager framework.</p>
<p>Replication master environments are the only database environments where
replicated databases may be modified.  Replication client environments
are read-only as long as they are clients.  Replication client
environments may be upgraded to be replication master environments in
the case that the current master fails or there is no master present.</p>
<p>The enclosing database environment must already have been opened by
calling the <a href="../api_c/env_open.html">DB_ENV-&gt;open</a> method and must already have been configured
to send replication messages by calling the <a href="../api_c/rep_transport.html">DB_ENV-&gt;rep_set_transport</a> method.</p>
<p>The DB_ENV-&gt;rep_start method
returns a non-zero error value on failure
and 0 on success.
</p>
<b>Parameters</b> <br>
 <b>cdata</b><ul compact><li>The <b>cdata</b> parameter is an opaque data item that is sent over the
communication infrastructure when the client comes online (see
<a href="../ref/rep/newsite.html">Connecting to a new site</a> for more
information).  If no such information is useful, <b>cdata</b> should
be NULL.</ul>
 <b>flags</b><ul compact><li>The <b>flags</b> parameter must be set to one of the following values:
<br>
<b><a name="DB_REP_CLIENT">DB_REP_CLIENT</a></b><ul compact><li>Configure the environment as a replication client.</ul>
<b><a name="DB_REP_MASTER">DB_REP_MASTER</a></b><ul compact><li>Configure the environment as a replication master.</ul>
<br></ul>
<br>
<br><b>Errors</b>
<p>The DB_ENV-&gt;rep_start method
may fail and return one of the following non-zero errors:</p>
<br>
<b>EINVAL</b><ul compact><li>If the database environment was not already configured to communicate with
a replication group by a call to <a href="../api_c/rep_transport.html">DB_ENV-&gt;rep_set_transport</a>;
the database environment was not already opened; or if an
invalid flag value or parameter was specified.</ul>
<br>
<hr size=1 noshade>
<br><b>Class</b>
<a href="../api_c/env_class.html">DB_ENV</a>
<br><b>See Also</b>
<a href="../api_c/rep_list.html">Replication and Related Methods</a>
</tt>
<table width="100%"><tr><td><br></td><td align=right>
<a href="../api_c/api_core.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1>Copyright (c) 1996,2008 Oracle.  All rights reserved.</font>
</body>
</html>
